<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
  <script src="https://cdn.jsdelivr.net/npm/lodash@4.17.15/lodash.min.js"></script>
  <script src="nice-blog-sys-routermap.js"></script>

</head>
<body>

</body>
<script>
  let menueArr = [{
    'path': '/admin',
    'name': 'admin',
    'component': {
      'name': 'BasicLayout',
      'mixins': [{ 'computed': {}, 'methods': {} }, { 'computed': {}, 'methods': {} }],
      'components': {
        'RouteView': {
          'name': 'RouteView',
          'props': { 'keepAlive': { 'default': true } },
          'beforeCreate': [null],
          'beforeDestroy': [null],
          '__file': 'src/layouts/RouteView.vue'
        },
        'SideMenu': {
          'name': 'SideMenu',
          'components': {
            'Logo': {
              'name': 'Logo',
              'components': {
                'LogoSvg': {
                  'props': {
                    'scale': {
                      'type': [null, null],
                      'default': 1,
                      'required': false
                    }, 'fill': { 'default': 'currentColor', 'required': false }
                  }, 'inheritAttrs': false, 'computed': {}
                }
              },
              'props': {
                'title': { 'default': 'Nice Blog', 'required': false },
                'showTitle': { 'default': true, 'required': false }
              },
              'staticRenderFns': [],
              '_compiled': true,
              'beforeCreate': [null],
              'beforeDestroy': [null],
              '__file': 'src/components/tools/Logo.vue'
            },
            'SMenu': {
              'name': 'SMenu',
              'props': {
                'menu': { 'required': true },
                'theme': { 'required': false, 'default': 'dark' },
                'mode': { 'required': false, 'default': 'inline' },
                'collapsed': { 'required': false, 'default': false }
              },
              'computed': {},
              'watch': {},
              'methods': {}
            }
          },
          'mixins': [{ 'computed': {}, 'methods': {} }, { 'computed': {}, 'methods': {} }],
          'props': {
            'mode': { 'required': false, 'default': 'inline' },
            'theme': { 'required': false, 'default': 'dark' },
            'collapsible': { 'required': false, 'default': false },
            'collapsed': { 'required': false, 'default': false },
            'menus': { 'required': true }
          },
          'methods': {},
          'staticRenderFns': [],
          '_compiled': true,
          'beforeCreate': [null],
          'beforeDestroy': [null],
          '__file': 'src/components/Menu/SideMenu.vue'
        },
        'GlobalHeader': {
          'name': 'GlobalHeader',
          'components': {
            'UserMenu': {
              'name': 'UserMenu',
              'components': {
                'NoticeIcon': {
                  'name': 'HeaderNotice',
                  'methods': {},
                  'staticRenderFns': [],
                  '_compiled': true,
                  '_scopeId': 'data-v-7eec4d22',
                  'beforeCreate': [null],
                  'beforeDestroy': [null],
                  '__file': 'src/components/NoticeIcon/NoticeIcon.vue'
                }
              },
              'computed': {},
              'methods': {},
              'staticRenderFns': [],
              '_compiled': true,
              'beforeCreate': [null],
              'beforeDestroy': [null],
              '__file': 'src/components/tools/UserMenu.vue'
            },
            'SMenu': {
              'name': 'SMenu',
              'props': {
                'menu': { 'required': true },
                'theme': { 'required': false, 'default': 'dark' },
                'mode': { 'required': false, 'default': 'inline' },
                'collapsed': { 'required': false, 'default': false }
              },
              'computed': {},
              'watch': {},
              'methods': {}
            },
            'Logo': {
              'name': 'Logo',
              'components': {
                'LogoSvg': {
                  'props': {
                    'scale': {
                      'type': [null, null],
                      'default': 1,
                      'required': false
                    }, 'fill': { 'default': 'currentColor', 'required': false }
                  }, 'inheritAttrs': false, 'computed': {}
                }
              },
              'props': {
                'title': { 'default': 'Nice Blog', 'required': false },
                'showTitle': { 'default': true, 'required': false }
              },
              'staticRenderFns': [],
              '_compiled': true,
              'beforeCreate': [null],
              'beforeDestroy': [null],
              '__file': 'src/components/tools/Logo.vue'
            }
          },
          'mixins': [{ 'computed': {}, 'methods': {} }],
          'props': {
            'mode': { 'default': 'sidemenu' },
            'menus': { 'required': true },
            'theme': { 'required': false, 'default': 'dark' },
            'collapsed': { 'required': false, 'default': false },
            'device': { 'required': false, 'default': 'desktop' }
          },
          'methods': {},
          'beforeDestroy': [null, null],
          'staticRenderFns': [],
          '_compiled': true,
          'beforeCreate': [null],
          '__file': 'src/components/GlobalHeader/GlobalHeader.vue'
        },
        'GlobalFooter': {
          'name': 'GlobalFooter',
          'staticRenderFns': [],
          '_compiled': true,
          '_scopeId': 'data-v-38e8cf0f',
          'beforeCreate': [null],
          'beforeDestroy': [null],
          '__file': 'src/components/GlobalFooter/GlobalFooter.vue'
        },
        'SettingDrawer': {
          'components': {
            'DetailList': {
              'name': 'DetailList',
              'Item': {
                'name': 'DetailListItem',
                'props': { 'term': { 'default': '', 'required': false } },
                'inject': { 'col': {} }
              },
              'components': {
                'Col': {
                  'name': 'ACol',
                  'props': {
                    'span': { 'type': [null, null] },
                    'order': { 'type': [null, null] },
                    'offset': { 'type': [null, null] },
                    'push': { 'type': [null, null] },
                    'pull': { 'type': [null, null] },
                    'xs': {},
                    'sm': {},
                    'md': {},
                    'lg': {},
                    'xl': {},
                    'xxl': {},
                    'prefixCls': {}
                  },
                  'inject': { 'configProvider': {}, 'rowContext': {} }
                }
              },
              'props': {
                'title': { 'default': '', 'required': false },
                'col': { 'required': false, 'default': 3 },
                'size': { 'required': false, 'default': 'large' },
                'layout': { 'required': false, 'default': 'horizontal' }
              },
              'staticRenderFns': [],
              '_compiled': true,
              '_scopeId': 'data-v-4ae1a4c5',
              'beforeCreate': [null],
              'beforeDestroy': [null],
              '__file': 'src/components/DescriptionList/DescriptionList.vue'
            },
            'SettingItem': {
              'name': 'SettingItem',
              'props': { 'title': { 'default': '' }, 'divider': { 'default': false } },
              'staticRenderFns': [],
              '_compiled': true,
              '_scopeId': 'data-v-67a78d35',
              'beforeCreate': [null],
              'beforeDestroy': [null],
              '__file': 'src/components/SettingDrawer/SettingItem.vue'
            }
          },
          'mixins': [{ 'computed': {}, 'methods': {} }, { 'computed': {}, 'methods': {} }],
          'computed': {},
          'watch': {},
          'methods': {},
          'staticRenderFns': [],
          '_compiled': true,
          '_scopeId': 'data-v-06065cda',
          'beforeCreate': [null],
          'beforeDestroy': [null],
          '__file': 'src/components/SettingDrawer/SettingDrawer.vue'
        }
      },
      'computed': {},
      'watch': {},
      'methods': {},
      'staticRenderFns': [],
      '_compiled': true,
      'beforeCreate': [null],
      'beforeDestroy': [null],
      '__file': 'src/layouts/BasicLayout.vue'
    },
    'meta': { 'title': '首页' },
    'redirect': '/dashboard/analysis',
    'children': [{
      'path': '/index',
      'name': 'adminIndex',
      'redirect': '/index/dashboard',
      'component': {
        'name': 'RouteView',
        'props': { 'keepAlive': { 'default': true } },
        'beforeCreate': [null],
        'beforeDestroy': [null],
        '__file': 'src/layouts/RouteView.vue'
      },
      'meta': {
        'title': '仪表盘',
        'keepAlive': true,
        'icon': {
          'props': {
            'scale': { 'type': [null, null], 'default': 1, 'required': false },
            'fill': { 'default': 'currentColor', 'required': false }
          }, 'inheritAttrs': false, 'computed': {}
        },
        'permission': ['dashboard']
      },
      'children': [{
        'path': '/dashboard/analysis',
        'name': 'Analysis',
        'meta': { 'title': '运行状态', 'keepAlive': false, 'permission': ['dashboard'] }
      }]
    }, {
      'path': '/system',
      'name': 'systemSettings',
      'redirect': '/system/menu',
      'component': {
        'name': 'RouteView',
        'props': { 'keepAlive': { 'default': true } },
        'beforeCreate': [null],
        'beforeDestroy': [null],
        '__file': 'src/layouts/RouteView.vue'
      },
      'meta': { 'title': '系统设置', 'keepAlive': true, 'icon': 'setting', 'permission': ['dashboard'] },
      'children': [{
        'path': '/system/menu',
        'name': 'SystemMenu',
        'meta': { 'title': '菜单管理', 'keepAlive': false, 'permission': ['dashboard'] }
      }, {
        'path': '/system/permission',
        'name': 'SystemPermission',
        'meta': { 'title': '权限管理', 'keepAlive': false, 'permission': ['dashboard'] }
      }, {
        'path': '/system/role',
        'name': 'SystemRole',
        'meta': { 'title': '角色管理', 'keepAlive': false, 'permission': ['dashboard'] }
      }, {
        'path': '/system/websiteInfo',
        'name': 'SystemWebsiteInfo',
        'meta': { 'title': '网站信息管理', 'keepAlive': false, 'permission': ['dashboard'] }
      }]
    }, {
      'path': '/blog',
      'name': 'adminBlog',
      'redirect': '/blog/write',
      'component': {
        'name': 'RouteView',
        'props': { 'keepAlive': { 'default': true } },
        'beforeCreate': [null],
        'beforeDestroy': [null],
        '__file': 'src/layouts/RouteView.vue'
      },
      'meta': { 'title': '博客管理', 'keepAlive': true, 'icon': 'cloud-server', 'permission': ['dashboard'] },
      'children': [{
        'path': '/blog/write',
        'name': 'BlogWrite',
        'meta': { 'title': '写博文', 'keepAlive': false, 'permission': ['dashboard'] }
      }, {
        'path': '/blog/manager',
        'name': 'BlogManager',
        'meta': { 'title': '博文管理', 'keepAlive': false, 'permission': ['dashboard'] }
      }, {
        'path': '/blog/commentReply',
        'name': 'BlogCommentReply',
        'meta': { 'title': '评论回复管理', 'keepAlive': false, 'permission': ['dashboard'] }
      }]
    }, {
      'path': '/demo',
      'name': 'adminDemo',
      'redirect': '/demo/dashboard',
      'component': {
        'name': 'RouteView',
        'props': { 'keepAlive': { 'default': true } },
        'beforeCreate': [null],
        'beforeDestroy': [null],
        '__file': 'src/layouts/RouteView.vue'
      },
      'meta': { 'title': '模板页面', 'keepAlive': true, 'icon': 'file-protect', 'permission': ['dashboard'] },
      'children': [{
        'path': '/dashboard',
        'name': 'dashboard',
        'redirect': '/dashboard/workplace',
        'component': {
          'name': 'RouteView',
          'props': { 'keepAlive': { 'default': true } },
          'beforeCreate': [null],
          'beforeDestroy': [null],
          '__file': 'src/layouts/RouteView.vue'
        },
        'meta': {
          'title': '仪表盘',
          'keepAlive': true,
          'icon': {
            'props': {
              'scale': { 'type': [null, null], 'default': 1, 'required': false },
              'fill': { 'default': 'currentColor', 'required': false }
            }, 'inheritAttrs': false, 'computed': {}
          },
          'permission': ['dashboard']
        },
        'children': [{
          'path': '/dashboard/analysis',
          'name': 'Analysis',
          'meta': { 'title': '分析页', 'keepAlive': false, 'permission': ['dashboard'] }
        }, {
          'path': 'https://www.baidu.com/',
          'name': 'Monitor',
          'meta': { 'title': '监控页（外部）', 'target': '_blank' }
        }, {
          'path': '/dashboard/workplace',
          'name': 'Workplace',
          'meta': { 'title': '工作台', 'keepAlive': true, 'permission': ['dashboard'] }
        }, {
          'path': '/dashboard/test-work',
          'name': 'TestWork',
          'meta': { 'title': '测试功能', 'keepAlive': true, 'permission': ['dashboard'] }
        }]
      }, {
        'path': '/form',
        'name': 'form',
        'redirect': '/form/base-form',
        'component': {
          'name': 'PageView',
          'components': {
            'PageHeader': {
              'name': 'PageHeader',
              'components': {
                's-breadcrumb': {
                  'methods': {},
                  'watch': {},
                  'staticRenderFns': [],
                  '_compiled': true,
                  '_scopeId': 'data-v-31510532',
                  'beforeCreate': [null],
                  'beforeDestroy': [null],
                  '__file': 'src/components/tools/Breadcrumb.vue'
                }
              },
              'props': {
                'title': { 'type': [null, null], 'default': true, 'required': false },
                'logo': { 'default': '', 'required': false },
                'avatar': { 'default': '', 'required': false }
              },
              'staticRenderFns': [],
              '_compiled': true,
              '_scopeId': 'data-v-58ab548f',
              'beforeCreate': [null],
              'beforeDestroy': [null],
              '__file': 'src/components/PageHeader/PageHeader.vue'
            }
          },
          'props': {
            'avatar': { 'default': null },
            'title': { 'type': [null, null], 'default': true },
            'logo': { 'default': null },
            'directTabs': { 'default': null }
          },
          'computed': {},
          'methods': {},
          'staticRenderFns': [],
          '_compiled': true,
          '_scopeId': 'data-v-07175cda',
          'beforeCreate': [null],
          'beforeDestroy': [null],
          '__file': 'src/layouts/PageView.vue'
        },
        'meta': { 'title': '表单页', 'icon': 'form', 'permission': ['form'] },
        'children': [{
          'path': '/form/base-form',
          'name': 'BaseForm',
          'meta': { 'title': '基础表单', 'keepAlive': true, 'permission': ['form'] }
        }, {
          'path': '/form/step-form',
          'name': 'StepForm',
          'meta': { 'title': '分步表单', 'keepAlive': true, 'permission': ['form'] }
        }, {
          'path': '/form/advanced-form',
          'name': 'AdvanceForm',
          'meta': { 'title': '高级表单', 'keepAlive': true, 'permission': ['form'] }
        }]
      }, {
        'path': '/list',
        'name': 'list',
        'component': {
          'name': 'PageView',
          'components': {
            'PageHeader': {
              'name': 'PageHeader',
              'components': {
                's-breadcrumb': {
                  'methods': {},
                  'watch': {},
                  'staticRenderFns': [],
                  '_compiled': true,
                  '_scopeId': 'data-v-31510532',
                  'beforeCreate': [null],
                  'beforeDestroy': [null],
                  '__file': 'src/components/tools/Breadcrumb.vue'
                }
              },
              'props': {
                'title': { 'type': [null, null], 'default': true, 'required': false },
                'logo': { 'default': '', 'required': false },
                'avatar': { 'default': '', 'required': false }
              },
              'staticRenderFns': [],
              '_compiled': true,
              '_scopeId': 'data-v-58ab548f',
              'beforeCreate': [null],
              'beforeDestroy': [null],
              '__file': 'src/components/PageHeader/PageHeader.vue'
            }
          },
          'props': {
            'avatar': { 'default': null },
            'title': { 'type': [null, null], 'default': true },
            'logo': { 'default': null },
            'directTabs': { 'default': null }
          },
          'computed': {},
          'methods': {},
          'staticRenderFns': [],
          '_compiled': true,
          '_scopeId': 'data-v-07175cda',
          'beforeCreate': [null],
          'beforeDestroy': [null],
          '__file': 'src/layouts/PageView.vue'
        },
        'redirect': '/list/table-list',
        'meta': { 'title': '列表页', 'icon': 'table', 'permission': ['table'] },
        'children': [{
          'path': '/list/table-list/:pageNo([1-9]\\d*)?',
          'name': 'TableListWrapper',
          'hideChildrenInMenu': true,
          'meta': { 'title': '查询表格', 'keepAlive': true, 'permission': ['table'] }
        }, {
          'path': '/list/basic-list',
          'name': 'BasicList',
          'meta': { 'title': '标准列表', 'keepAlive': true, 'permission': ['table'] }
        }, {
          'path': '/list/card',
          'name': 'CardList',
          'meta': { 'title': '卡片列表', 'keepAlive': true, 'permission': ['table'] }
        }, {
          'path': '/list/search',
          'name': 'SearchList',
          'redirect': '/list/search/article',
          'meta': { 'title': '搜索列表', 'keepAlive': true, 'permission': ['table'] },
          'children': [{
            'path': '/list/search/article',
            'name': 'SearchArticles',
            'meta': { 'title': '搜索列表（文章）', 'permission': ['table'] }
          }, {
            'path': '/list/search/project',
            'name': 'SearchProjects',
            'meta': { 'title': '搜索列表（项目）', 'permission': ['table'] }
          }, {
            'path': '/list/search/application',
            'name': 'SearchApplications',
            'meta': { 'title': '搜索列表（应用）', 'permission': ['table'] }
          }]
        }]
      }, {
        'path': '/profile',
        'name': 'profile',
        'component': {
          'name': 'RouteView',
          'props': { 'keepAlive': { 'default': true } },
          'beforeCreate': [null],
          'beforeDestroy': [null],
          '__file': 'src/layouts/RouteView.vue'
        },
        'redirect': '/profile/basic',
        'meta': { 'title': '详情页', 'icon': 'profile', 'permission': ['profile'] },
        'children': [{
          'path': '/profile/basic',
          'name': 'ProfileBasic',
          'meta': { 'title': '基础详情页', 'permission': ['profile'] }
        }, {
          'path': '/profile/advanced',
          'name': 'ProfileAdvanced',
          'meta': { 'title': '高级详情页', 'permission': ['profile'] }
        }]
      }, {
        'path': '/result',
        'name': 'result',
        'component': {
          'name': 'PageView',
          'components': {
            'PageHeader': {
              'name': 'PageHeader',
              'components': {
                's-breadcrumb': {
                  'methods': {},
                  'watch': {},
                  'staticRenderFns': [],
                  '_compiled': true,
                  '_scopeId': 'data-v-31510532',
                  'beforeCreate': [null],
                  'beforeDestroy': [null],
                  '__file': 'src/components/tools/Breadcrumb.vue'
                }
              },
              'props': {
                'title': { 'type': [null, null], 'default': true, 'required': false },
                'logo': { 'default': '', 'required': false },
                'avatar': { 'default': '', 'required': false }
              },
              'staticRenderFns': [],
              '_compiled': true,
              '_scopeId': 'data-v-58ab548f',
              'beforeCreate': [null],
              'beforeDestroy': [null],
              '__file': 'src/components/PageHeader/PageHeader.vue'
            }
          },
          'props': {
            'avatar': { 'default': null },
            'title': { 'type': [null, null], 'default': true },
            'logo': { 'default': null },
            'directTabs': { 'default': null }
          },
          'computed': {},
          'methods': {},
          'staticRenderFns': [],
          '_compiled': true,
          '_scopeId': 'data-v-07175cda',
          'beforeCreate': [null],
          'beforeDestroy': [null],
          '__file': 'src/layouts/PageView.vue'
        },
        'redirect': '/result/success',
        'meta': { 'title': '结果页', 'icon': 'check-circle-o', 'permission': ['result'] },
        'children': [{
          'path': '/result/success',
          'name': 'ResultSuccess',
          'meta': { 'title': '成功', 'keepAlive': false, 'hiddenHeaderContent': true, 'permission': ['result'] }
        }, {
          'path': '/result/fail',
          'name': 'ResultFail',
          'meta': { 'title': '失败', 'keepAlive': false, 'hiddenHeaderContent': true, 'permission': ['result'] }
        }]
      }, {
        'path': '/exception',
        'name': 'exception',
        'component': {
          'name': 'RouteView',
          'props': { 'keepAlive': { 'default': true } },
          'beforeCreate': [null],
          'beforeDestroy': [null],
          '__file': 'src/layouts/RouteView.vue'
        },
        'redirect': '/exception/403',
        'meta': { 'title': '异常页', 'icon': 'warning', 'permission': ['exception'] },
        'children': [{
          'path': '/exception/403',
          'name': 'Exception403',
          'meta': { 'title': '403', 'permission': ['exception'] }
        }, {
          'path': '/exception/404',
          'name': 'Exception404',
          'meta': { 'title': '404', 'permission': ['exception'] }
        }, {
          'path': '/exception/500',
          'name': 'Exception500',
          'meta': { 'title': '500', 'permission': ['exception'] }
        }]
      }, {
        'path': '/account',
        'component': {
          'name': 'RouteView',
          'props': { 'keepAlive': { 'default': true } },
          'beforeCreate': [null],
          'beforeDestroy': [null],
          '__file': 'src/layouts/RouteView.vue'
        },
        'redirect': '/account/center',
        'name': 'account',
        'meta': { 'title': '个人页', 'icon': 'user', 'keepAlive': true, 'permission': ['user'] },
        'children': [{
          'path': '/account/center',
          'name': 'center',
          'meta': { 'title': '个人中心', 'keepAlive': true, 'permission': ['user'] }
        }, {
          'path': '/account/settings',
          'name': 'settings',
          'meta': { 'title': '个人设置', 'hideHeader': true, 'permission': ['user'] },
          'redirect': '/account/settings/base',
          'hideChildrenInMenu': true,
          'children': [{
            'path': '/account/settings/base',
            'name': 'BaseSettings',
            'meta': { 'title': '基本设置', 'permission': ['user'] }
          }, {
            'path': '/account/settings/security',
            'name': 'SecuritySettings',
            'meta': { 'title': '安全设置', 'keepAlive': true, 'permission': ['user'] }
          }, {
            'path': '/account/settings/custom',
            'name': 'CustomSettings',
            'meta': { 'title': '个性化设置', 'keepAlive': true, 'permission': ['user'] }
          }, {
            'path': '/account/settings/binding',
            'name': 'BindingSettings',
            'meta': { 'title': '账户绑定', 'keepAlive': true, 'permission': ['user'] }
          }, {
            'path': '/account/settings/notification',
            'name': 'NotificationSettings',
            'meta': { 'title': '新消息通知', 'keepAlive': true, 'permission': ['user'] }
          }]
        }]
      }, {
        'path': '/other',
        'name': 'otherPage',
        'component': {
          'name': 'PageView',
          'components': {
            'PageHeader': {
              'name': 'PageHeader',
              'components': {
                's-breadcrumb': {
                  'methods': {},
                  'watch': {},
                  'staticRenderFns': [],
                  '_compiled': true,
                  '_scopeId': 'data-v-31510532',
                  'beforeCreate': [null],
                  'beforeDestroy': [null],
                  '__file': 'src/components/tools/Breadcrumb.vue'
                }
              },
              'props': {
                'title': { 'type': [null, null], 'default': true, 'required': false },
                'logo': { 'default': '', 'required': false },
                'avatar': { 'default': '', 'required': false }
              },
              'staticRenderFns': [],
              '_compiled': true,
              '_scopeId': 'data-v-58ab548f',
              'beforeCreate': [null],
              'beforeDestroy': [null],
              '__file': 'src/components/PageHeader/PageHeader.vue'
            }
          },
          'props': {
            'avatar': { 'default': null },
            'title': { 'type': [null, null], 'default': true },
            'logo': { 'default': null },
            'directTabs': { 'default': null }
          },
          'computed': {},
          'methods': {},
          'staticRenderFns': [],
          '_compiled': true,
          '_scopeId': 'data-v-07175cda',
          'beforeCreate': [null],
          'beforeDestroy': [null],
          '__file': 'src/layouts/PageView.vue'
        },
        'meta': { 'title': '其他组件', 'icon': 'slack', 'permission': ['dashboard'] },
        'redirect': '/other/icon-selector',
        'children': [{
          'path': '/other/icon-selector',
          'name': 'TestIconSelect',
          'meta': { 'title': 'IconSelector', 'icon': 'tool', 'keepAlive': true, 'permission': ['dashboard'] }
        }, {
          'path': '/other/list',
          'component': {
            'name': 'RouteView',
            'props': { 'keepAlive': { 'default': true } },
            'beforeCreate': [null],
            'beforeDestroy': [null],
            '__file': 'src/layouts/RouteView.vue'
          },
          'meta': { 'title': '业务布局', 'icon': 'layout', 'permission': ['support'] },
          'redirect': '/other/list/tree-list',
          'children': [{
            'path': '/other/list/tree-list',
            'name': 'TreeList',
            'meta': { 'title': '树目录表格', 'keepAlive': true }
          }, {
            'path': '/other/list/edit-table',
            'name': 'EditList',
            'meta': { 'title': '内联编辑表格', 'keepAlive': true }
          }, {
            'path': '/other/list/user-list',
            'name': 'UserList',
            'meta': { 'title': '用户列表', 'keepAlive': true }
          }, {
            'path': '/other/list/role-list',
            'name': 'RoleList',
            'meta': { 'title': '角色列表', 'keepAlive': true }
          }, {
            'path': '/other/list/system-role',
            'name': 'SystemRole',
            'meta': { 'title': '角色列表2', 'keepAlive': true }
          }, {
            'path': '/other/list/permission-list',
            'name': 'PermissionList',
            'meta': { 'title': '权限列表', 'keepAlive': true }
          }]
        }]
      }]
    }]
  }, {
    'path': '/',
    'component': {
      'name': 'BlogLayout',
      'components': {
        'BlogCarousel': {
          'staticRenderFns': [],
          '_compiled': true,
          '_scopeId': 'data-v-79e7b10f',
          'beforeCreate': [null],
          'beforeDestroy': [null],
          '__file': 'src/components/Blog/BlogCarousel.vue'
        },
        'BlogProfile': {
          'name': 'BlogProfile',
          'methods': {},
          'staticRenderFns': [],
          '_compiled': true,
          '_scopeId': 'data-v-5d4f186c',
          'beforeCreate': [null],
          'beforeDestroy': [null],
          '__file': 'src/components/Blog/BlogProfile.vue'
        },
        'BlogTagTop5': {
          'name': 'BlogTagTop5',
          'computed': {},
          'methods': {},
          'staticRenderFns': [],
          '_compiled': true,
          '_scopeId': 'data-v-3da679db',
          'beforeCreate': [null],
          'beforeDestroy': [null],
          '__file': 'src/components/Blog/BlogTagTop5.vue'
        },
        'BlogTagItemList': {
          'name': 'BlogTagItemList',
          'computed': {},
          'methods': {},
          'staticRenderFns': [],
          '_compiled': true,
          '_scopeId': 'data-v-a4aef6a8',
          'beforeCreate': [null],
          'beforeDestroy': [null],
          '__file': 'src/components/Blog/BlogTagItemList.vue'
        },
        'ACol': {
          'name': 'ACol',
          'props': {
            'span': { 'type': [null, null] },
            'order': { 'type': [null, null] },
            'offset': { 'type': [null, null] },
            'push': { 'type': [null, null] },
            'pull': { 'type': [null, null] },
            'xs': {},
            'sm': {},
            'md': {},
            'lg': {},
            'xl': {},
            'xxl': {},
            'prefixCls': {}
          },
          'inject': { 'configProvider': {}, 'rowContext': {} }
        },
        'BlogMainHeader': {
          'name': 'BlogMainHeader',
          'components': {
            'BlogCategory': {
              'name': 'BlogCategory',
              'props': { 'menu': { 'required': true } },
              'methods': {}
            }
          },
          'methods': {},
          'staticRenderFns': [],
          '_compiled': true,
          '_scopeId': 'data-v-bd2a8ed6',
          'beforeCreate': [null],
          'beforeDestroy': [null],
          '__file': 'src/components/Blog/BlogMainHeader.vue'
        },
        'BlogHelperHeader': {
          'name': 'BlogHelperHeader',
          'components': {
            'BlogSitePanel': {
              'methods': {},
              'staticRenderFns': [],
              '_compiled': true,
              'beforeCreate': [null],
              'beforeDestroy': [null],
              '__file': 'src/components/Blog/BlogSitePanel.vue'
            },
            'IconSelector': {
              'name': 'IconSelect',
              'props': { 'prefixCls': { 'default': 'ant-pro-icon-selector' }, 'value': {} },
              'watch': {},
              'methods': {},
              'staticRenderFns': [],
              '_compiled': true,
              '_scopeId': 'data-v-34a6114f',
              'beforeCreate': [null],
              'beforeDestroy': [null],
              '__file': 'src/components/IconSelector/IconSelector.vue'
            },
            'UserInfoLabel': {
              'name': 'UserInfoLabel',
              'props': { 'nickname': {}, 'avatar': { 'type': [null] } },
              'methods': {},
              'staticRenderFns': [],
              '_compiled': true,
              '_scopeId': 'data-v-68d51abe',
              'beforeCreate': [null],
              'beforeDestroy': [null],
              '__file': 'src/components/Blog/UserInfoLabel.vue'
            }
          },
          'computed': {},
          'methods': {},
          'staticRenderFns': [],
          '_compiled': true,
          '_scopeId': 'data-v-750e1a8a',
          'beforeCreate': [null],
          'beforeDestroy': [null],
          '__file': 'src/components/Blog/BlogHelperHeader.vue'
        },
        'BlogSearch': {
          'staticRenderFns': [],
          '_compiled': true,
          '_scopeId': 'data-v-3f18ab17',
          'beforeCreate': [null],
          'beforeDestroy': [null],
          '__file': 'src/components/Blog/BlogSearch.vue'
        },
        'BlogFooter': {
          'name': 'BlogFooter',
          'staticRenderFns': [null],
          '_compiled': true,
          '_scopeId': 'data-v-83c46cec',
          'beforeCreate': [null],
          'beforeDestroy': [null],
          '__file': 'src/components/Blog/BlogFooter.vue'
        },
        'LogoSvg': {
          'props': {
            'scale': { 'type': [null, null], 'default': 1, 'required': false },
            'fill': { 'default': 'currentColor', 'required': false }
          }, 'inheritAttrs': false, 'computed': {}
        },
        'Login': {
          'components': {
            'TwoStepCaptcha': {
              'props': { 'visible': { 'default': false } },
              'methods': {},
              'staticRenderFns': [],
              '_compiled': true,
              '_scopeId': 'data-v-798ef406',
              'beforeCreate': [null],
              'beforeDestroy': [null],
              '__file': 'src/components/tools/TwoStepCaptcha.vue'
            },
            'GiteeSvg': {
              'props': {
                'scale': { 'type': [null, null], 'default': 1, 'required': false },
                'fill': { 'default': 'currentColor', 'required': false }
              }, 'inheritAttrs': false, 'computed': {}
            },
            'QqSvg': {
              'props': {
                'scale': { 'type': [null, null], 'default': 1, 'required': false },
                'fill': { 'default': 'currentColor', 'required': false }
              }, 'inheritAttrs': false, 'computed': {}
            },
            'GithubSvg': {
              'props': {
                'scale': { 'type': [null, null], 'default': 1, 'required': false },
                'fill': { 'default': 'currentColor', 'required': false }
              }, 'inheritAttrs': false, 'computed': {}
            }
          },
          'computed': {},
          'methods': {},
          'staticRenderFns': [],
          '_compiled': true,
          '_scopeId': 'data-v-1ecd471f',
          'beforeCreate': [null],
          'beforeDestroy': [null],
          '__file': 'src/views/user/Login.vue'
        }
      },
      'computed': {},
      'methods': {},
      'staticRenderFns': [],
      '_compiled': true,
      '_scopeId': 'data-v-8066892a',
      'beforeCreate': [null],
      'beforeDestroy': [null],
      '__file': 'src/layouts/BlogLayout.vue'
    },
    'name': 'Index',
    'redirect': '/blog/index',
    'children': [{ 'path': '/blog/index', 'name': 'BlogIndex' }, {
      'path': '/blog/architect',
      'name': 'BlogArchitect'
    }, { 'path': '/blog/leaveMsg', 'name': 'BlogCommentDrawer' }]
  }, {
    'path': '/blog/detail', 'component': {
      'name': 'BlogDetailLayout',
      'components': {
        'BlogCarousel': {
          'staticRenderFns': [],
          '_compiled': true,
          '_scopeId': 'data-v-79e7b10f',
          'beforeCreate': [null],
          'beforeDestroy': [null],
          '__file': 'src/components/Blog/BlogCarousel.vue'
        },
        'BlogMainHeader': {
          'name': 'BlogMainHeader',
          'components': {
            'BlogCategory': {
              'name': 'BlogCategory',
              'props': { 'menu': { 'required': true } },
              'methods': {}
            }
          },
          'methods': {},
          'staticRenderFns': [],
          '_compiled': true,
          '_scopeId': 'data-v-bd2a8ed6',
          'beforeCreate': [null],
          'beforeDestroy': [null],
          '__file': 'src/components/Blog/BlogMainHeader.vue'
        },
        'BlogHelperHeader': {
          'name': 'BlogHelperHeader',
          'components': {
            'BlogSitePanel': {
              'methods': {},
              'staticRenderFns': [],
              '_compiled': true,
              'beforeCreate': [null],
              'beforeDestroy': [null],
              '__file': 'src/components/Blog/BlogSitePanel.vue'
            },
            'IconSelector': {
              'name': 'IconSelect',
              'props': { 'prefixCls': { 'default': 'ant-pro-icon-selector' }, 'value': {} },
              'watch': {},
              'methods': {},
              'staticRenderFns': [],
              '_compiled': true,
              '_scopeId': 'data-v-34a6114f',
              'beforeCreate': [null],
              'beforeDestroy': [null],
              '__file': 'src/components/IconSelector/IconSelector.vue'
            },
            'UserInfoLabel': {
              'name': 'UserInfoLabel',
              'props': { 'nickname': {}, 'avatar': { 'type': [null] } },
              'methods': {},
              'staticRenderFns': [],
              '_compiled': true,
              '_scopeId': 'data-v-68d51abe',
              'beforeCreate': [null],
              'beforeDestroy': [null],
              '__file': 'src/components/Blog/UserInfoLabel.vue'
            }
          },
          'computed': {},
          'methods': {},
          'staticRenderFns': [],
          '_compiled': true,
          '_scopeId': 'data-v-750e1a8a',
          'beforeCreate': [null],
          'beforeDestroy': [null],
          '__file': 'src/components/Blog/BlogHelperHeader.vue'
        },
        'BlogSearch': {
          'staticRenderFns': [],
          '_compiled': true,
          '_scopeId': 'data-v-3f18ab17',
          'beforeCreate': [null],
          'beforeDestroy': [null],
          '__file': 'src/components/Blog/BlogSearch.vue'
        },
        'BlogFooter': {
          'name': 'BlogFooter',
          'staticRenderFns': [null],
          '_compiled': true,
          '_scopeId': 'data-v-83c46cec',
          'beforeCreate': [null],
          'beforeDestroy': [null],
          '__file': 'src/components/Blog/BlogFooter.vue'
        },
        'LogoSvg': {
          'props': {
            'scale': { 'type': [null, null], 'default': 1, 'required': false },
            'fill': { 'default': 'currentColor', 'required': false }
          }, 'inheritAttrs': false, 'computed': {}
        },
        'BlogContent': {
          'name': 'BlogContent',
          'components': {
            'Viewer': {
              'props': {
                'images': {},
                'rebuild': { 'default': false },
                'trigger': {},
                'options': {}
              },
              'computed': {},
              'methods': {},
              'watch': { 'trigger': { 'deep': true }, 'options': { 'deep': true } },
              'staticRenderFns': [],
              '_compiled': true,
              'beforeCreate': [null],
              'beforeDestroy': [null],
              '__file': 'node_modules/v-viewer/src/component.vue'
            }
          },
          'computed': {},
          'methods': {},
          'staticRenderFns': [],
          '_compiled': true,
          '_scopeId': 'data-v-9bf26af8',
          'beforeCreate': [null],
          'beforeDestroy': [null],
          '__file': 'src/views/blog/BlogContent.vue'
        },
        'BlogOutline': { 'name': 'SMenu', 'props': { 'menu': { 'required': true } }, 'computed': {}, 'methods': {} },
        'BlogComment': {
          'methods': {},
          'staticRenderFns': [],
          '_compiled': true,
          'beforeCreate': [null],
          'beforeDestroy': [null],
          '__file': 'src/views/blog/BlogComment.vue'
        }
      },
      'computed': {},
      'methods': {},
      'staticRenderFns': [],
      '_compiled': true,
      '_scopeId': 'data-v-4e524848',
      'beforeCreate': [null],
      'beforeDestroy': [null],
      '__file': 'src/layouts/BlogDetailLayout.vue'
    }, 'children': [{ 'path': '/blog/detail/:blogId', 'name': 'BlogDetail' }]
  }]


  function printMenue(menue, parentId) {
    let permission = menue.meta && menue.meta.permission ? menue.meta.permission.join(',') : ''
    let title = menue.meta && menue.meta.title ? menue.meta.title : ''
    let icon = menue.meta && menue.meta.icon ? menue.meta.icon : ''
    let component = menue.component && menue.component.__file ? menue.component.__file : ''
    // let formatSQL = `INSERT INTO \`kiwipeach\`.\`sys_function\` (\`ID\`, \`NAME\`,  \`LOCATION\`, \`TEXT\`, \`PARENTID\`) VALUES ('${menue.id}','${permission}','${menue.path}','${title}','${parentId}');`
    let formatSQL = `INSERT INTO \`kiwipeach\`.\`sys_function\`
     (\`ID\`, \`NAME\`, \`CODE\`, \`MODULE\`, \`LOCATION\`,
      \`TEXT\`, \`PARENTID\`, \`WEIGHT\`, \`STATUS\`, \`NODE_TYPE\`,
      \`ICON\`, \`COMPONENT\`, \`REDIRECT\`, \`HIDE\`, \`HIDE_CHILDRENI_NMENU\`,
      \`DESCRIPTION\`, \`KEEP_ALIVE\`, \`CREATE_TIME\`, \`UPDATE_TIME\`) VALUES (
      '${menue.id}', 'BlogAbout', ${permission}, 'system', '${menue.path}',
      '${title}', '${parentId}', '1', 'ON', 'PAGE',
       '${icon}', NULL, NULL, '0', NULL,
       '${title}', '0', '2020-05-03 00:39:18', '2020-05-03 00:39:18');`
    //let formatSQL = `update sys_function set name = '${menue.name}',icon = '${icon}',component='${component}' where text = '${title}';`
    // let formatSQL = `update sys_function set component='${component}' where text = '${title}';`
    //console.log(`${menue.id} ${menue.name} ${title} ${menue.path} ${permission} ${parentId}`)
    console.log(formatSQL)
    if (menue.children && menue.children.length > 0) {
      for (var child of menue.children) {
        child.id = _.uniqueId('')
        printMenue(child, menue.id)
      }
    }
  }

  /*console.log('数据库插入语句：')
  for (let menue of menueArr) {
    menue.id = _.uniqueId('')
    printMenue(menue, null)
  }*/



</script>
</html>